package com.xyy.saas.payment.dao.model;

import java.util.Date;

/**
 * 分润单
 *
 * @author automodel
 * @date   2019/12/17
 */
public class RoyaltyOrder {

    /**
     * 资金类型：业务订单
     */
    public final static Byte AMOUNT_TYPE_ORDER = 1;
    /**
     * 资金类型：手续费
     */
    public final static Byte AMOUNT_TYPE_FEE = 2;
    /**
     * 资金类型：金额记录
     */
    public final static Byte AMOUNT_TYPE_RECORD = 3;

    /**
     * 状态 ： 已创建
     */
    public final static Byte STATUS_CREATE = 0;
    /**
     * 状态 ： 已统计
     */
    public final static Byte STATUS_COUNT = 1;
    /**
     * 状态 ： 已结算
     */
    public final static Byte STATUS_SETTLE = 2;
    /**
     * 状态 ：结算已取消
     */
    public final static Byte STATUS_CANCEL = 3;



    /**
     * 自增主键id
     */
    private Long id;

    /**
     * 业务订单类型
     */
    private String payNo;

    /**
     * 支付渠道
     */
    private String payChannel;

    /**
     * 收款人ID
     */
    private String payeeId;

    /**
     * 业务订单类型
     */
    private String orderType;

    /**
     * 资金类型：1 业务订单, 2 手续费
     */
    private Byte amountType;

    /**
     * 分润金额 （正为正向分润， 负为逆向分润）
     */
    private Integer amount;

    /**
     * 本次分润的佣金
     */
    private Integer userCommission;

    /**
     * 状态：0 已创建, 1 已总结, 2 已统计, 3 结算已取消
     */
    private Byte status;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 成功时间
     */
    private Date successTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 绑定的结算单号
     */
    private String settleOrderNo;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getPayNo() {
        return payNo;
    }

    public void setPayNo(String payNo) {
        this.payNo = payNo;
    }

    public String getPayeeId() {
        return payeeId;
    }

    public void setPayeeId(String payeeId) {
        this.payeeId = payeeId;
    }

    public String getOrderType() {
        return orderType;
    }

    public void setOrderType(String orderType) {
        this.orderType = orderType;
    }

    public Byte getAmountType() {
        return amountType;
    }

    public void setAmountType(Byte amountType) {
        this.amountType = amountType;
    }

    public Integer getAmount() {
        return amount;
    }

    public void setAmount(Integer amount) {
        this.amount = amount;
    }

    public Byte getStatus() {
        return status;
    }

    public void setStatus(Byte status) {
        this.status = status;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getSuccessTime() {
        return successTime;
    }

    public void setSuccessTime(Date successTime) {
        this.successTime = successTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getSettleOrderNo() {
        return settleOrderNo;
    }

    public void setSettleOrderNo(String settleOrderNo) {
        this.settleOrderNo = settleOrderNo;
    }

    public String getPayChannel() {
        return payChannel;
    }

    public void setPayChannel(String payChannel) {
        this.payChannel = payChannel;
    }

    public Integer getUserCommission() {
        return userCommission;
    }

    public void setUserCommission(Integer userCommission) {
        this.userCommission = userCommission;
    }
}